"""
@Project ：leetocde 
@File    ：1828.统计一个圆中的数目.py
@Author  ：zhupp
@Date    ：2024/12/2 17:56 
"""
from typing import List

"""
给你一个数组 points ，其中 points[i] = [xi, yi] ，表示第 i 个点在二维平面上的坐标。多个点可能会有 相同 的坐标。

同时给你一个数组 queries ，其中 queries[j] = [xj, yj, rj] ，表示一个圆心在 (xj, yj) 且半径为 rj 的圆。

对于每一个查询 queries[j] ，计算在第 j 个圆 内 点的数目。如果一个点在圆的 边界上 ，我们同样认为它在圆 内 。

请你返回一个数组 answer ，其中 answer[j]是第 j 个查询的答案。
"""


class Solution:
    def countPoints(self, points: List[List[int]], queries: List[List[int]]) -> List[int]:
        answer = []
        # 圆的圆心坐标和半径
        for center_x, center_y, radius in queries:
            # 在圆中点的个数
            count = 0
            # 点的坐标
            for x, y in points:
                if (center_x - x) ** 2 + (center_y - y) ** 2 <= radius ** 2:
                    count += 1
            answer.append(count)
        return answer
